The use of mobile computing devices has exploded in recent years. Users now may download a wide variety of mobile software applications to their smart phones and other mobile computing devices and access data on the Internet through Wi-Fi, Bluetooth, CDMA, and other communications protocols. However, users of such devices do not have unlimited access to the Internet as access is limited to the available connection modality in particular geographic locations and the cost of data downloads over these networks may be prohibitive. Also, the users of such devices are limited to the mobile software applications loaded onto their mobile devices or to new mobile software applications and content updates of the existing mobile software applications that may be readily loaded onto their mobile computing devices over an available Internet connection. Generally, such mobile software applications are available as content on a web-based server and are available for download by the user once a suitable Internet connection is available and appropriate download permissions are obtained.
Generally speaking, users are not given the opportunity to designate in advance what content the user would like to store locally on his or her mobile computing device and what mobile content is best accessible via an Internet connection. Though some caching is provided by the browser of a mobile computing device, an Internet connection is generally required to operate many mobile software applications that require access to data or functional code available only via an Internet connection. For example, a particular mobile software application may require a segment of Javascript code to operate and may need to download the code to display certain data.
Existing systems address the downloading of mobile software applications by enabling the user of the mobile computing device to sync to another computer for downloading of any critical functional and/or content data not stored on the mobile computing device. However, such systems do not necessarily know whether the downloaded data has an on-line component and thus may require Internet access to operate. If Internet access is unavailable, use of the particular mobile software application becomes impossible. In such cases, the mobile computing device cannot be used off-line as access to all of the functional code is required for execution. Users do not have control over which code and which portions of content may be stored locally versus remotely; therefore, operation of their devices is limited by the availability of an Internet connection.
It is thus desired to enable a user or content manager/publisher to designate what mobile software application functional code and data are to be stored locally on the user's mobile computing device to enable complete off-line operation versus those portions of mobile software application functional code and data that are stored for access via an Internet connection. Such designations by the user or content manager/publisher would maximize the utility of the user's mobile computing device in off-line situations. It is also desirable for the content manager/publisher to be able to assign different content to different users or groups of users.